Solid state storage devices (for example, solid state drives or SSDs) may be comprised of one or more packages of non-volatile memory dies implementing NAND memory cells, where each die is comprised of storage cells, where storage cells are organized into pages and pages are organized into blocks. Each storage cell can store one or more bits of information. A solid state storage device (SSD) of NAND memory cells uses a logical-to-physical (“L2P”) address table to map logical addresses, such as logical block addresses (LBAs) (for example, the address used by operating system write and read commands is typically a LBA), to NAND physical addresses. Each entry of the L2P address table is an Indirection Unit (IU). The indirection granularity is typically 4 Kilo Bytes (KB), i.e., each IU maps eight 512 bytes (B) sectors or one 4 KB sector to a portion of a physical NAND page.
In certain NAND SSDs, a band comprises erase blocks of pages in the NAND that may be erased at the same time. A band extends across the NAND storage dies, such that there are multiple bands extending across the storage dies forming rows of data across the storage dies. At the end of each band, such as in the last storage die, there may be a data structure referred to as a band journal that includes physical-to-logical address (P2L) information for all data stored in the band, which indicates the logical address of data in each physical address in the band.
The band journal P2L information may be used during internal defragmentation of a band, also known as band relocation, to reclaim space in the NAND. When defragmenting a band, the band journal P2L information is read to obtain the LBAs for the physical NAND addresses and then to check if the entry in the L2P address table for the obtained LBAs indicates the physical address being considered for defragmentation. If there is a match of the physical addresses, then the data for the physical address in the band is valid and the data may be defragmented.
Further, the band journal may be used to assist in fast power-loss-recovery of the L2P information by determining the logical addresses for physical addresses in the P2L table, and then updating the L2P information to indicate the physical addresses for the logical addresses as indicated in the P2L information.
There is a need in the art for improved techniques for maintaining information on physical and logical addresses for a non-volatile memory device.